home *** CD-ROM | disk | FTP | other *** search
- From: Ulrich Kuehn <kuehn@GOEDEL.UNI-MUENSTER.DE>
- Subject: Bug in crt0.cpp ?
- Date: Mon, 08 Mar 93 14:34:46 +0100
-
- Hi,
- I just came across an interesting point: in crt0, there is a test for
- the program being started as accessory:
- subl a6, a6 | clear a6 for debuggers
- cmpw #0, a0 | test if acc or program
- beq __startprg | if a program, go elsewhere
- tstl a0@(36) | also test parent basepage pointer
- bne __startprg | for accs, it must be 0
- movel a0, Base | acc basepage is in A0
- lea a0@(252), sp | use the command line as a temporary stack
- jmp __acc_main | function is in crtinit.c
- But atari has documented that accessories are started with a0 containing
- the basepage pointer, they said nothing about the pointer to the parent's
- basepage.
- Why is there a test for the parent pointer to be zero?
- It might break some accessories written with gcc, or am I too pessimistic?
-
- Ulrich
-
- +---------------+----------------------------+-------------------------+
- | Ulrich Kuehn | Internet: | Do they know that they |
- | Cand.Math.Inf | kuehn@math.uni-muenster.de | cannot eat their money? |
- +---------------+----------------------------+-------------------------+
-